The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.
Referring now to FIG. 1, one or more control modules 10 control various subsystems of a vehicle. A control module 10 typically includes a primary processor 12 that includes an arithmetic logic unit (ALU) that is capable of calculating results for a wide variety of arithmetical computations. The calculated results are used by software to control the various electrical and/or mechanical components of the subsystem.
Some conventional control modules 10 include a secondary processor 14. The purpose of the secondary processor 14 is to provide a security check for the ALU of the primary processor 12. For example, the secondary processor 14 can periodically transmit an arithmetic request to the primary processor 12. The primary processor 12 answers by transmitting a calculated result. The secondary processor 14 compares the calculated result to an expected result. When the calculated result equals the expected result, the secondary processor 14 determines that the ALU of the primary processor 12 is operating correctly. Otherwise, when the calculated result does not equal the expected result, the ALU of the primary processor 12 is determined to be faulty. The secondary processor 14 disables the primary processor 12 by switching off the power to the primary processor 12 from a power supply 16.
This type of security check is required for most real time embedded control systems. Providing a secondary processor adds to the overall cost of producing the control module 10.